#include "InterpolateNeighbor.h"



QRgb InterpolateNeighbor::getInterpolateResult (const QImage & src,
                                                const QPointF & p)
{
  if (p.x () > src.width () - 1 || p.x () < 0)
  {
    return 0;
  }
  if (p.y () > src.height () - 1 || p.y () < 0)
  {
    return 0;
  }

  int x = (int)(p.x () + 0.5);
  int y = (int)(p.y () + 0.5);
  if (src.depth () == 8)
  {
    return src.bits ()[src.bytesPerLine () * y + x];
  }
  else if (src.depth () == 32)
  {
    return *((QRgb *)&(src.bits ()[src.bytesPerLine () * y + x * 4]));
  }

  return 0;
  
}
